package com.itheima.client;

import com.itheima.user.pojo.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * @version 1.0
 * @description
 * openfeign的客户端
 * name=服务提供者的服务名(spring.application.name)
 * path=服务提供者的controller类上的路径
 * contextId: spring容器的bean对象的id
 *
 * 定义方法:从服务提供者的controller方法复制过来,
 * 注意请求路径问题：完整路径要=controller类上的路径+方法上的路径
 * 【注意】：如何使用PathVariable注解来获取参数，必须取别名
 * 【注意】：这个feign接口所在的包，必须在项目启动时被扫描到
 *
 * @package com.itheima.client
 */
@FeignClient(name = "itheima-user",path = "/user",contextId = "userClient")
public interface UserClient {

    /***
     * 根据id查询用户详情
     */
    @GetMapping(value = "/{id}")
    User one(@PathVariable(value = "id") Long id);
}
